1. Field
Embodiments of the invention relate to selection of a connection path for retrieving lock attention data from a group of attention connection paths.
2. Description of the Related Art
A transaction processing system such as an airline reservation system, a hotel reservation system, a credit card transaction processing system, an automatic teller machine system, other banking systems, or the like typically comprises a plurality of host systems or hosts such as mainframe computers, servers, and the like. The hosts access data in a common data storage location. The data store typically includes a plurality of storage devices such as hard disk drives, data caches, and the like. The hosts may access the data in the storage devices through a control unit. For example, a first host may request data from the control unit, and the control unit may retrieve the data from one or more storage devices. The first host may also transmit data to the control unit, and the control unit may write the data to one or more storage devices.
Each host communicates with the control unit through a channel path. Each channel path typically includes one or more physical communication channels such as a digital electronic communication bus, a digital optical communication bus, or a similar communication channel. In addition, each channel path may include one or more logical control blocks, addresses, communication devices, digital switches, and the like for coordinating the transmission of digital messages between the host and the control unit.
Before the first host accesses data through the control unit, the first host typically requests that the data be locked. For example, the first host may request that specified data such as one or more rows in a data table, one or more tracks of a hard disk drive, or the like be locked. If the first host is granted the lock, the first host may access the specified data without a second host being allowed access the specified data. The first host has exclusive access to the specified data until the first host releases the lock. For transactions such as airline reservations, credit card transactions, or similar transactions, a locking function is designed to allow a transaction with a first host to be completed before a second host can access the transaction data.
If the second host requests a lock on the specified data while the first host holds the lock on the specified data, the second host will be not receive the lock and will become a waiter. Instead the second host's lock request will be placed in a lock request queue. The second host may wait to process transactions until receiving the lock. After the first host has released the lock on the data, the control unit grants the next lock request in the lock request queue for the specified data. For example, after the first host releases the lock, the control unit may grant a lock on the specified data to the second host if the second host's request is the next request in the lock request queue. The control unit notifies the second host that the lock has been released by transmitting lock attention data. In this scenario, the lock attention data may take on different forms depending on the status of the lock. The lock attention data may provide information that the lock has been granted or may provide a lock contention message. The lock attention data may provide lock status information. One skilled in the art will recognize other appropriate lock attention data. Upon receipt of the lock attention data granting the lock, the second host may access the specified data.
Notwithstanding current techniques for enabling a host to access lock attention data, there is a need in the art for providing improved access.